package com.LatitudeYao;
import java.lang.*;
/**
 * Created by GTS on 2017/7/18.
    1.匹配

    2.切割

    3.替换

    4.查找
 */

public class MyString {
    //1.匹配
    public static void myMach(String phoneNumber){
        String reg = "1[34578]\\d{9}";//从1开始，第二位是34578中的一个，然后是9位数字
        System.out.println("True or false:  "+phoneNumber.matches(reg));
    }
    public static  void  myMach2(String phoneNumber){
        String reg = "0\\d{2,3}-[1-9]\\{6,7}";//从1开始，第二位是34578中的一个，然后是9位数字
        System.out.println("True or false:  "+phoneNumber.matches(reg));
    }
    //切割
    public static String  mySplit(String str){
        String reg = " +";
        String[] str2 = str.split(reg);
        String str3 = "";
        for (int i = 0; i <str2.length ; i++) {//没有结束符，length不需要编程length-1
           str3 = str3+(str2[i]);
        }
        System.out.println(str3);
        return str3;
    }

    /*
    // 重叠词切割.此处涉及到正则复用
    //分组使用()表示。组号从1 开始计算
    \\2表示强制使用第二组，同时*表示0次或者多次 ，+表示1次或者多次
    //比如     String str4 = "AAAABBCCCCCDDDDEE";
    reg = "(.)\\1+"     第一组至少出现一次，即多个的内容就会匹配

     */
    public static void mySplit2(String str){
        String reg = "(.)\\1+";
        String[] str2 = str.split(reg);

    }
    public static void main(String[] args) {
        String str1 = "1828390424";
        myMach(str1);
        //固定电话    区号-主机号   区号3-4位，首位0.主机号  首位不是0，长度7-8位
        String str2 = "028-3834256";
        myMach2(str2);
        String str3 = "T    E S  T";
        mySplit(str3);
        String str4 = "AAAABBCCCCCDDDDEE";
        mySplit2(str4);

    }
}
